home *** CD-ROM | disk | FTP | other *** search
-
-
-
- FFFFIIIIZZZZ((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((JJJJaaaannnn 33331111,,,, 1111999988888888)))) FFFFIIIIZZZZ((((1111))))
-
-
-
- NNNNAAAAMMMMEEEE
- fiz - analyze damaged zoo archive for data revovery
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- _f_i_z archive[....zzzzoooooooo]
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- _F_i_z is used to analyze damaged _z_o_o archives and locate
- directory entries and file data in them. The current
- version of _f_i_z is 2.0 and it is meant to be used in
- conjunction with _z_o_o version 2.0. _F_i_z makes no assumptions
- about archive structure. Instead, it simply searches the
- entire subject archive for tag values that mark the
- locations of directory entries and file data. In a _z_o_o
- archive, a _d_i_r_e_c_t_o_r_y _e_n_t_r_y contains information about a
- stored file such as its name, whether compressed or not, and
- its timestamp. The _f_i_l_e _d_a_t_a are the actual data for the
- archived file, and may be either the original data, or the
- result of compressing the file.
-
- For each directory entry found, _f_i_z prints where in the
- archive it is located, the directory path and filename(s)
- found in it, whether the directory entry appears to be
- corrupted (indicated by [*CRC Error*]), and the value of the
- pointer to the file data that is found in the directory
- entry. For each block of file data found in the archive,
- _f_i_z prints where in the archive the block begins. In the
- case of an undamaged archive, the pointer to file data found
- in a directory entry will correspond to where _f_i_z actually
- locates the data. Here is some sample output from _f_i_z:
-
- ****************
- 2526: DIR [changes] ==> 95
- 2587: DATA
- ****************
- 3909: DIR [copyrite] ==> 1478
- 3970: DATA
- 4769: DATA
- ****************
-
- In such output, DDDDIIIIRRRR indicates where _f_i_z found a directory
- entry in the archive, and DDDDAAAATTTTAAAA indicates where _f_i_z found
- file data in the archive. Filenames located by _f_i_z are
- enclosed in square brackets, and the notation "==> 95"
- indicates that the directory entry found by _f_i_z at position
- 2526 has a file data pointer to position 95. In actuality,
- _f_i_z found file data at positions 2587, 3970, and 4769.
- Since _f_i_z found only two directory entries, and each
- directory entry corresponds to one file, one of the file
- data positions is an artifact.
-
- Once the locations of directory entries and file data are
-
-
-
- Page 1 (printed 3/9/94)
-
-
-
-
-
-
- FFFFIIIIZZZZ((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((JJJJaaaannnn 33331111,,,, 1111999988888888)))) FFFFIIIIZZZZ((((1111))))
-
-
-
- found, the @@@@ modifier to _z_o_o'_s archive list and extract
- commands can be used and the archive contents selectively
- listed or extracted, skipping the damaged portion. This is
- further described in the documentation for _z_o_o(_1).
-
- In the above case, commands to try giving to _z_o_o might be
- xxxx@@@@2222555522226666,,,,2222555588887777 (extract beginning at position 2526, and get
- file data from position 2587), xxxx@@@@3333000099990000,,,,3333999977770000 (extract at 3090,
- get data from 3970) and xxxx@@@@3333999900009999,,,,4444777766669999 (extract at 3909, get
- data from 4769). Once a correctly-matched directory
- entry/file data pair is found, _z_o_o will in most cases
- synchronize with and correctly extract all files
- subsequently found in the archive. Trial and error should
- allow all undamaged files to be extracted. Also note that
- self-extracting archives created using _s_e_z (the Self-
- Extracting _Z_o_o utility for MS-DOS), which are normally
- executed on an MS-DOS system for extraction, can be
- extracted on non-MSDOS systems in a similar way.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- zoo(1)
-
- BBBBUUUUGGGGSSSS
- Random byte patterns can occasionally be incorrectly
- recognized as tag values. This occurs very rarely, however,
- and trial and error will usually permit all undamaged data
- to be extracted.
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- _F_i_z always exits with a status code of 0.
-
- FFFFUUUUTTTTUUUURRRREEEE DDDDIIIIRRRREEEECCCCTTTTIIIIOOOONNNNSSSS
- Automation of data recovery from a damaged archive is
- potentially achievable. However, since damaged archives
- occur only rarely, _f_i_z as it currently stands is unlikely to
- change much in the near future.
-
- AAAAUUUUTTTTHHHHOOOORRRR
- Rahul Dhesi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 2 (printed 3/9/94)
-
-
-
-